(Concerns main weapon ring)

CE/A456: 22 85 AE 8E  JSL $8EAE85
CE/A45A: A0 4D 03     LDY #$034D
CE/A45D: 22 2B AF 8C  JSL $8CAF2B
CE/A461: A4 95        LDY $95
CE/A463: B9 02 00     LDA $0002,Y
CE/A466: 0A           ASL 
CE/A467: 18           CLC 
CE/A468: 69 04 00     ADC #$0004
CE/A46B: A8           TAY 
CE/A46C: B1 95        LDA ($95),Y
CE/A46E: AA           TAX 
CE/A46F: BF 00 80 8E  LDA $8E8000,X
CE/A473: AA           TAX 
CE/A474: BF 00 00 8E  LDA $8E0000,X
CE/A478: DA           PHX 
CE/A479: 85 22        STA $22
CE/A47B: A9 C4 00     LDA #$00C4
CE/A47E: 85 24        STA $24
CE/A480: A0 4D 03     LDY #$034D
CE/A483: 22 03 9E 8C  JSL $8C9E03
CE/A487: A9 20 00     LDA #$0020
CE/A48A: 0C 5F 03     TSB $035F
CE/A48D: A3 01        LDA $01,S
CE/A48F: AA           TAX 
CE/A490: BF 06 00 8E  LDA $8E0006,X
CE/A494: AA           TAX            (get ID of potential new weapon selected on ring?)
CE/A495: E0 1A 00     CPX #$001A
CE/A498: F0 4F        BEQ $A4E9      (branch if it's Bazooka, skipping displays of
                                      the two Battle Powers)
CE/A49A: AE BA 0A     LDX $0ABA      (get current weapon ID)
CE/A49D: BF 74 38 C4  LDA $C43874,X  (get pointer to weapon data block)
CE/A4A1: AA           TAX 
CE/A4A2: BF 00 00 C4  LDA $C40000,X  (get current weapon's Battle Power)
CE/A4A6: 85 02        STA $02
CE/A4A8: 64 04        STZ $04
CE/A4AA: A9 F4 2F     LDA #$2FF4
CE/A4AD: 85 22        STA $22
CE/A4AF: A9 7E 00     LDA #$007E
CE/A4B2: 85 24        STA $24        (set display buffer pointer to 7E/2FF4)
CE/A4B4: 22 1F B2 80  JSR $80B21F    (turn a 32-bit number, stored in $00:0002 thru
                                      $00:0005, into text and add it to display buffer.
                                      in this case, it's Battle Power we're displaying.)
CE/A4B8: A9 5E 00     LDA #$005E
CE/A4BB: 97 22        STA [$22],Y    (store the "=>" right arrow character in buffer)
CE/A4BD: 98           TYA 
CE/A4BE: 18           CLC 
CE/A4BF: 65 22        ADC $22
CE/A4C1: 1A           INC 
CE/A4C2: 85 22        STA $22        (increment buffer pointer by # of characters stored
                                      by above call, plus 1)
CE/A4C4: A3 01        LDA $01,S
CE/A4C6: AA           TAX 
CE/A4C7: BF 06 00 8E  LDA $8E0006,X
CE/A4CB: AA           TAX            (get ID of potential new weapon selected on ring?)
CE/A4CC: BF 74 38 C4  LDA $C43874,X  (get pointer to weapon data block)
CE/A4D0: AA           TAX 
CE/A4D1: BF 00 00 C4  LDA $C40000,X  (get potential weapon's Battle Power)
CE/A4D5: 85 02        STA $02
CE/A4D7: 64 04        STZ $04
CE/A4D9: 22 1F B2 80  JSR $80B21F    (turn a 32-bit number, stored in $00:0002 thru
                                      $00:0005, into text and add it to display buffer.
                                      in this case, it's Battle Power we're displaying.)
CE/A4DD: A9 F4 2F     LDA #$2FF4
CE/A4E0: 85 22        STA $22
CE/A4E2: A0 4D 03     LDY #$034D
CE/A4E5: 22 03 9E 8C  JSL $8C9E03
CE/A4E9: A9 20 00     LDA #$0020
CE/A4EC: 1C 5F 03     TRB $035F
CE/A4EF: FA           PLX
CE/A4F0: BF 06 00 8E  LDA $8E0006,X  (get ID of potential new weapon selected on ring?)
CE/A4F4: C9 1A 00     CMP #$001A
CE/A4F7: D0 06        BNE $A4FF      (branch if not Bazooka)
CE/A4F9: A9 02 00     LDA $0002
CE/A4FC: 1C AB 05     TRB $05AB
CE/A4FF: 20 BC AD     JSR $ADBC
CE/A502: 48           PHA 
CE/A503: A9 02 00     LDA #$0002
CE/A506: 0C AB 05     TSB $05AB
CE/A509: 68           PLA 
CE/A50A: B0 03        BCS $A50F
CE/A50C: 4C 56 A4     JMP $A456      (branch to start of function)
CE/A50F: 89 40 00     BIT #$0040
CE/A512: F0 08        BEQ $A51C
CE/A514: 20 AC 91     JSR $91AC
CE/A517: B0 03        BCS $A51C
CE/A519: 4C 56 A4     JMP $A456      (branch to start of function)
CE/A51C: 60           RTS 
